Detecting Patterns in Object-Oriented Source Code - A Case Study
نویسندگان
چکیده
Pattern detection methods discover recurring solutions in a system’s implementation, for example design patterns in object-oriented source code. Usually this is done with a pattern library. This has the disadvantage that the precise implementation of the patterns must be known in advance. The method used in our case study does not have this disadvantage. It uses a mathematical technique called Formal Concept Analysis and is applied to find structural patterns in two subsystems of a printer controller. The case study shows that it is possible to detect frequently used structural design constructs without upfront knowledge. However, even the detection of relatively simple patterns in relatively small pieces of software takes a lot of computing time. Since this is due to the complexity of the applied algorithms, applying the method to large software systems like the complete controller is not practical. They can be applied to its subsystems though, which are about five to ten percent of its size.
منابع مشابه
An Abstract Method Linearization for Detecting Source Code Plagiarism in Object-Oriented Environment
Despite the fact that plagiarizing source code is a trivial task for most CS students, detecting such unethical behavior requires a considerable amount of effort. Thus, several plagiarism detection systems were developed to handle such issue. This paper extends Karnalim’s work, a low-level approach for detecting Java source code plagiarism, by incorporating abstract method linearization. Such e...
متن کاملCodifying Structural Regularities of Object-Oriented Programs
Well-written object-oriented programs exhibit many structural regularities ranging from naming and coding conventions, through design patterns, to architectural constraints. Tools and environments that aid a software developer in constructing, understanding or modifying object-oriented programs should be able to reason about and manipulate such regularities. We codify structural regularities of...
متن کاملGenerating Object-Oriented and Aspect-Oriented Sequence based Test Cases with Optimum Code Coverage
Code coverage analysis holds a very important role in software testing procedure. By the test case runs it provides developers by means to quantify of how well their source code is being exercised. By detecting errors/bugs in the code it estimates the efficiency of the test. We must implement a systematic way and support the theoretical bases for testing the programs with the purpose of perform...
متن کاملModelsaz: An Object-Oriented Computer-Aided Modeling Environment
Modeling and simulation of processing plants are widely used in industry. Construction of a mathematical model for a plant is a time-consuming and error-prone task. In light of extensive advancements in computer science (both hardware and software), computers are becoming a necessary instrument in industrial activities. Many software tools for modeling, simulation and optimization of proces...
متن کاملSome Thoughts On Refactoring Objects to Aspects
The prospect of aspect-orientation receiving widespread acceptance and adoption in the near future begs the question of how to deal with a large base of object-oriented legacy code. We propose to investigate refactoring techniques for restructuring object-oriented source code so that it can leverage the mechanisms of aspect-orientation in order to become easier to adapt, extend and evolve. Our ...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2007